Option Explicit
Sub O_Sample001()
    Dim myVbc As VBIDE.VBComponent
    Dim myprp As VBIDE.Property
    Dim myObj As Object
    Dim myStr As String
    For Each myVbc In ThisWorkbook.VBProject.VBComponents
        Debug.Print "******" & myVbc.Name & "******"
        For Each myprp In myVbc.Properties
            myStr = myprp.Name & " " & myprp.NumIndices
            On Error Resume Next
            If Not myprp.Object Is Nothing Then
                Set myObj = myprp.Object
                myStr = myStr & ":Type:= " & TypeName(myprp.Object)
                myStr = myStr & ":Object.name:=" & myObj.Name
            Else
                myStr = myStr & ":Type:= " & TypeName(myprp.Value)
                myStr = myStr & ":Value:=" & myprp.Value
            End If
            On Error GoTo 0
            Debug.Print myStr
        Next
    Next
End Sub